A Middleware Layer for Flexible and Cost-Efficient Multi-tenant Applications
نویسندگان
چکیده
Application-level multi-tenancy is an architectural design principle for Software-as-a-Service applications to enable the hosting of multiple customers (or tenants) by a single application instance. Despite the operational cost and maintenance benefits of application-level multitenancy, the current middleware component models for multi-tenant application design are inflexible with respect to providing different software variations to different customers. In this paper we show that this limitation can be solved by a multitenancy support layer that combines dependency injection with middleware support for tenant data isolation. Dependency injection enables injecting different software variations on a per tenant basis, while dedicated middleware support facilitates the separation of data and configuration metadata between tenants. We implemented a prototype on top of Google App Engine and we evaluated by means of a case study that the improved flexibility of our approach has little impact on operational costs and upfront application engineering costs.
منابع مشابه
Cost-effectiveness of tenant-based allocation model in SaaS applications running in a public Cloud
Context. Cloud computing is getting more and more interest with every year. It is an approach that allows Internet based applications to work in distributed and virtualized cloud environment. It is characterized by on-demand resources and payper-use pricing. Software-as-a-Service (SaaS) is a software distribution paradigm in cloud computing and represents the highest, software layer in the clou...
متن کاملImplementation and Evaluation of a Multi-tenant Open-Source ESB
Offering applications as a service in the Cloud builds on the notion of application multi-tenancy. Multi-tenancy, the sharing of application instances and their underlying resources between users from different organizational domains, allows service providers to maximize resource utilization and reduce servicing costs per user. Realizing application multi-tenancy however requires suitable enabl...
متن کاملArchitectural Concerns in Multi-tenant SaaS Applications
Multi-tenant applications serve different customers with one application instance. This architectural style leverages sharing and economies of scale to provide cost efficient hosting. As multi-tenancy is a new concept, a common definition of the word and related concepts is not yet established and the architectural concerns are not fully understood. This paper provides an overview of important ...
متن کاملFeature Models at Run Time: Feature Middleware for Multi-tenant SaaS applications
Software product line engineering (SPLE) techniques revolve around a central variability model which in many cases is a feature model that documents the logical capabilities of the system as features and the variability relationships between them. In more traditional SPLE, this feature model is a result of domain analysis and requirement elicitation, while more recently this approach has been e...
متن کاملMTBase: Optimizing Cross-Tenant Database Queries
In the last decade, many business applications have moved into the cloud. In particular, the “database-as-a-service” paradigm has become mainstream. While existing multi-tenant data management systems focus on single-tenant query processing, we believe that it is time to rethink how queries can be processed across multiple tenants in such a way that we do not only gain more valuable insights, b...
متن کامل